package com.holly.unit.deform.api;

import com.holly.unit.core.pojo.response.ResponseData;
import com.holly.unit.deform.api.pojo.facade.AddDeformDataRequest;
import com.holly.unit.deform.api.pojo.facade.EditDeformDataRequest;
import com.holly.unit.deform.api.pojo.facade.ListDeformDataRequest;
import com.holly.unit.deform.api.pojo.facade.QueryOrDelDeformDataRequest;


/**
 * 接口描述: 表单设计器对第三方系统暴露的API
 *
 * @author fxr
 * @version 1.0.0
 * @date 2022/4/2 8:19
 */
public interface DeformFacadeApi {

    /***
     * 通过 desformCode 和 dataId 查询数据
     * @param request desformCode   dataId
     * @return
     */
    ResponseData apiGetData(QueryOrDelDeformDataRequest request);

    /***
     * 通过 desformCode 新增数据
     * @param request
     * @return
     */
    ResponseData apiAddData(AddDeformDataRequest request);

    /***
     * 通过 desformCode 和 dataId 修改数据
     * @param request
     * @return
     */
    ResponseData apiEditData(EditDeformDataRequest request);

    /***
     * 通过 desformCode 和 dataId 删除数据
     * @param request
     * @return
     */
    ResponseData apiDeleteData(QueryOrDelDeformDataRequest request);

    /***
     * 通过 desformCode 和 dataId 根据高级查询条件查询数据
     * @return 返回的结果信息需要根据项目的分页要求转化为hutool中的分页结果类
     */
    ResponseData apiGetDataList(ListDeformDataRequest request);


}
